The present invention relates generally to methods of simultaneously processing a group of thermal elements. In one aspect, the invention relates to methods of simultaneously processing a group of multiple thermal elements, using dot history and supply specific printing parameters, to generate a printed image.
A typical thermal printer includes a printhead comprising a linear array of thermal elements. The number of thermal elements in the linear array can vary, with a characteristic printhead employing 1248 thermal elements. Each of the thermal elements produces heat in response to energy supplied by a microcontroller associated with the thermal printer. The microcontroller applies a voltage or current to each of the thermal elements to heat the thermal elements to a level sufficient to transfer dots (i.e., burns, printed dots, etc.) onto a media (e.g., an adhesive-backed substrate with an opposing ink-receiving surface). This is accomplished when a thermally-sensitive supply (e.g., ink-bearing ribbon, donor ribbon, etc.) comes into thermal contact with the thermal elements while proximate the media. Each thermal element can transfer a dot, or leave an unprinted area, depending on the amount of energy supplied to the thermal element.
Color printing is made possible by using a colored thermally-sensitive supply (e.g., a supply that contains colored ink). When the thermal element comes into thermal contact with the colored supply, a colored dot is generated. The range of colors available to the printer can be expanded if an additional, differently-colored dot is generated upon a first colored dot, such that the two colored dots combine to make a third color. This process of laying one dot over another can be repeated to produce a myriad of colors and/or shades of color.
As thermal elements in the linear array are selectively, intermittently fired, a raster line of dots and/or unprinted areas is produced. The media is stepped past the array of thermal elements in a direction transverse to the array of thermal elements such that consecutive raster lines are produced on the media. The raster line most recently printed is known as the current raster line, the raster line printed one generation earlier is known as the previous raster line, and the raster line printed two generations earlier is known as the two-back raster line. The patterns of dots produced within each raster line are known as burn patterns. These burn patterns can comprise all, or a portion of, the dots in the raster line. Thus, the current raster line produces current burn patterns, the previous raster line produces previous burn patterns, and so on, through the burn pattern generations to create a history of burn patterns within the raster lines (history is referred to in greater detail below).
While the temperature of a thermal element can be quickly raised by the application of energy, a longer time is required for the thermal element to cool, generally along an exponential curve that is affected by the ambient temperature of the printhead. This result occurs because a thermal element will retain heat and/or receive heat radiated from adjacent thermal elements. Thus, the thermal element will remain hot long after energy is directed to that thermal element. One problem with the thermal element remaining hot arises when the thermal element is instructed to remain idle (i.e., insufficiently heated), meaning that an area on the media remains unprinted. If the thermal element is too hot, a dot, or portion thereof, may be generated where no dot is desired.
The dilemma of excess retained or radiated heat predominately occurs after a series of consecutive dots are generated. For example, where a series of dots are produced by a thermal element at four consecutive sites on a media, and then the thermal element is instructed to remain idle at a fifth site, a dot might nonetheless be printed at the fifth site. This can occur if too much heat was retained by the thermal element after generating the first four dots because the thermal element remains above the temperature required to generate a dot when the thermal element reached the fifth site. In other words, the thermal element did not have sufficient time to cool below the temperature required to transfer a dot. Unfortunately, the normal consequence of the above example is a series of four dots followed by a fractional dot where there should be a blank, clear, or unprinted area. This problem is sometimes referred to in the art as hysteresis. Complicating the problem of hysteresis is the increasing printing speed being employed in printers. As the speed of printing increases, the media travels past the printhead faster and thermal elements have less time to cool.
Several approaches have been suggested to combat the problem of hysteresis. One such approach provides a plurality of thermal energy pulses of varying duration depending on whether a thermal element is xe2x80x9ccoldxe2x80x9d, xe2x80x9cwarmxe2x80x9d or xe2x80x9chotxe2x80x9d. Another solution that has been suggested requires that all thermal elements be kept at an elevated resting temperature just below that needed for printing by supplying xe2x80x9cmaintenancexe2x80x9d pulses during every interval that a thermal element is not actually printing. Yet, another solution to the problem employs dot history which takes into account the history of thermal element burn patterns in order to print more efficiently. In the simplest terms, dot history takes into account the firing, over time, of a thermal element and/or an adjacent thermal element or elements. Unfortunately, undertaking any of the above methods requires onerous calculations to be performed by the processor in the printer system. Part of the problem stems from the fact that each specific supply used in the printing system possesses different characteristics (e.g., width, ink color, ink type, etc.) that must be considered to produce a quality print. Thus, a printer processor is required to make numerous calculations, usually during the printing operation, for each new supply used.
In U.S. Pat. No. 6,034,705 to Tolle, et. al., and again in U.S. Pat. No. 6,249,299 to Tainer, methods of controlling energy supplied to a single thermal element based on dot history are disclosed. Also, In U.S. Pat. No. 5,548,688 to Wiklof, et. al., another method of controlling the energy supplied to a single thermal element based on dot history and adjacent thermal elements is disclosed. Wiklof also discloses determining the printing activity, namely whether the thermal element is energized or not energized for each segment in the scan line time, for a single thermal element and storing the information in a look-up table. However, the methods of Tolle, Tainer, and Wiklof, command a large processor memory and consume a vast amount of processor time, and as such, these methodologies become less desirable, particularly as more thermal elements and/or adjacent thermal elements in dot history are taken into consideration. Moreover, the above methods tend to monopolize and over-tax the processor in a printing system. Thus, a more efficient method of printing employing look-up tables is needed. Further, a more desirable location for storing the look-up tables would be preferred.
In one aspect, the invention provides a method of processing thermal elements in a thermal element group. In doing so, the method permits the reduction of processor time such that it is practical to consider dot history of the thermal elements when creating a printed image.
The method comprises accessing, from a specific supply, printing parameters. The printing parameters typically include a microstrobe number and microstrobe energy values and are stored in a printer memory. Thereafter, a dot history pattern and a number of thermal elements for the thermal element group are determined.
Next, thermal elements are assigned to the thermal element group based on the number of thermal elements in the thermal element group. In one embodiment, the thermal elements assigned to the group of thermal elements comprise consecutive thermal elements. The thermal element group is packed into the dot history pattern to generate a packed dot history pattern. From the packed dot history pattern, a packed thermal element number is determined. A packed index, with a packed index length based on the packed thermal element number, is created. Packed index values are determined to occupy the packed index length. The packed index values are based on the packed dot history pattern.
Thereafter, microstrobes are divided based on the microstrobe number stored in the printer memory. This produces divided microstrobes. Packed binary pulse numbers are assigned to the divided microstrobes based on a strobe pattern. The packed binary pulse numbers typically correspond to each of the packed index values occupying the packed index length. Packed strobe numbers based on the packed binary pulse numbers are determined. The packed strobe numbers generally correspond to each of the packed index values occupying the packed index length.
The printed image is then created using a bit map pattern, the packed dot history pattern, the packed index values, the packed strobe numbers, and the microstrobe energy values. In one embodiment, the bit map pattern, the packed dot history pattern, the packed index values, and/or the packed strobe numbers are stored in printer memory.
Further, printing parameters can be accessed by loading a cartridge containing a supply of ribbon into a printer when the cartridge includes a memory cell having the printing parameters stored therein. The memory cell is generally secured to the cartridge and can be erased after the supply of ribbon stored within the cartridge is exhausted. Also, the memory cell can contain an electronic lock capable of being unlocked by an electronic key associated with the printer. The electronic key can be accessed by the printer and used to unlock the supply specific printing parameters stored in the memory cell.
In one embodiment, entire raster lines of the packed strobe numbers are determined and two or more of the entire raster lines are used to created the printed image.